package com.question.business.menu.model.vo;

import com.question.common.annotation.DictConvert;
import com.question.common.annotation.UserConvert;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 菜单详情响应参数
 *
 * @author star
 * @since 2023-09-11
 */
@Data
public class MenuDetailVO {

    /**
     * ID
     */
    private String id;

    /**
     * 菜单名称
     */
    private String menuName;

    /**
     * 菜单代码
     */
    private String menuCode;

    /**
     * 上级菜单ID
     */
    private String parentId;

    /**
     * 上级菜单名称
     */
    private String parentName;

    /**
     * 菜单类型(1:目录2:菜单3:按钮)
     */
    @DictConvert
    private Integer menuType;

    /**
     * 菜单顺序
     */
    private Integer menuOrder;

    /**
     * 布局(0:否1:是)
     */
    @DictConvert(type = "yesAndNo")
    private Integer layout;

    /**
     * 显示状态(1:显示2:隐藏)
     */
    @DictConvert
    private Integer visible;

    /**
     * 路由地址
     */
    private String path;

    /**
     * 重定向
     */
    private String redirect;

    /**
     * 组件路径
     */
    private String component;

    /**
     * 图标
     */
    private String icon;

    /**
     * 启用状态(1:启用2:停用)
     */
    @DictConvert
    private Integer enabled;

    /**
     * 创建时间
     */
    private LocalDateTime createdTime;

    /**
     * 创建用户
     */
    @UserConvert
    private String createdUser;

    /**
     * 更新时间
     */
    private LocalDateTime updatedTime;

    /**
     * 更新用户
     */
    @UserConvert
    private String updatedUser;

    /**
     * 菜单接口明细
     */
    private List<MenuInterfaceVO> interfaces;

}